Images and textures best practices
The required memory bandwidth that rendering of large textures and images use can slow down your application. You can optimize the performance of your applications by:
- The most straight-forward way to optimize the performance of your application is to reduce the detail by using smaller data sizes. See Adjusting the data size.
- Kanzi supports AMD Texture Compression (ATC), Ericsson Texture Compression (ETC), and PowerVR Texture Compression (PVRTC) for compressing images used in textures. See Compressing textures.
- When users run your Kanzi application in an environment with a multi-core processor, Kanzi automatically uses multiple CPU cores to load from kzb files to RAM all the GPU resource data in your application. You can configure how many cores you want your application to use. See Loading resources in parallel.
- Use mipmaps to create a set of downscaled sub-levels from a large texture. Mipmaps double the GPU memory use, but improve the peformance when full texture does not have to be sampled (for example, when a texture is far and covers only a few pixels). See Using mipmaps.
- Apply texture filtering to increase either quality or performance. This method can be very effective if you are familiar with the application behavior in advance. See Filtering textures.
- When you use a Text Block or a Text Layer Kanzi creates a glyph cache texture for every font and font size combination. You can set the height and width of glyph cache textures to adjust the size of the glyph cache texture either when it gets full, or to optimize the performance of your Kanzi application. See
Size of the glyph cache texture.
See also
Adjusting the data size
Loading resources in parallel
Using mipmaps
Compressing textures
Filtering textures
Measuring the performance of your Kanzi application
Best practices
Textures
Open topic with navigation